package com.stud.common.core.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;

/**
 * @author Stud
 * @title XXXXX
 * @desription XXXXX
 * @data 2023-03-06 9:21
 */

@ApiModel("流程基类")
public class WorkflowEntity extends BaseEntity {

    /**
     * 流程定义ID
     */
    @ApiModelProperty("流程定义ID")
    private Long workflowDefinitionId;

    /**
     * 流程实例ID
     */
    @ApiModelProperty("流程实例ID")
    private Long workflowId;

    /**
     * 当前流程节点ID
     */
    @ApiModelProperty("当前流程节点ID")
    private Long workflowTaskId;

    /**
     * 当前流程节点名称
     */
    @ApiModelProperty("当前流程节点名称")
    private String workflowTaskName;

    /**
     * 流程状态
     */
    @ApiModelProperty("流程状态")
    private Integer workflowStatus;

    /**
     * 流程启动时间
     */
    @ApiModelProperty("流程启动时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date workflowStartTime;

    /**
     * 流程结束时间
     */
    @ApiModelProperty("流程结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date workflowEndTime;

    /**
     * 上次审批时间
     */
    @ApiModelProperty("上次审批时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastApproveTime;

    /**
     * 审核结果备注
     */
    @ApiModelProperty("审核结果备注")
    private String workflowRemark;


    public Long getWorkflowDefinitionId() {
        return workflowDefinitionId;
    }

    public void setWorkflowDefinitionId(Long workflowDefinitionId) {
        this.workflowDefinitionId = workflowDefinitionId;
    }

    public Long getWorkflowId() {
        return workflowId;
    }

    public void setWorkflowId(Long workflowId) {
        this.workflowId = workflowId;
    }

    public Long getWorkflowTaskId() {
        return workflowTaskId;
    }

    public void setWorkflowTaskId(Long workflowTaskId) {
        this.workflowTaskId = workflowTaskId;
    }

    public String getWorkflowTaskName() {
        return workflowTaskName;
    }

    public void setWorkflowTaskName(String workflowTaskName) {
        this.workflowTaskName = workflowTaskName;
    }

    public Integer getWorkflowStatus() {
        return workflowStatus;
    }

    public void setWorkflowStatus(Integer workflowStatus) {
        this.workflowStatus = workflowStatus;
    }

    public Date getWorkflowStartTime() {
        return workflowStartTime;
    }

    public void setWorkflowStartTime(Date workflowStartTime) {
        this.workflowStartTime = workflowStartTime;
    }

    public Date getWorkflowEndTime() {
        return workflowEndTime;
    }

    public void setWorkflowEndTime(Date workflowEndTime) {
        this.workflowEndTime = workflowEndTime;
    }

    public Date getLastApproveTime() {
        return lastApproveTime;
    }

    public void setLastApproveTime(Date lastApproveTime) {
        this.lastApproveTime = lastApproveTime;
    }

    public String getWorkflowRemark() {
        return workflowRemark;
    }

    public void setWorkflowRemark(String workflowRemark) {
        this.workflowRemark = workflowRemark;
    }
}
